Se me asigna mostrar una imagen cuando se adivina una palabra secreta. Todo funciona bien, pero cuando uso el estilo "bloque" para mostrar la imagen, aparece la cadena real "bloque". Estoy seguro de que esto es una solución fácil, pero no he encontrado un problema similar. Gracias por adelantado.
JavaScript:
function getSecretMessage() { let secretMessage = "Link"; let userMessage = ""; while (userMessage != secretMessage) { userMessage = prompt("Enter the Secret word.") } let showimage = document.getElementById("picture").style.display="block"; document.getElementById("results").innerHTML = "Congratulations!" + showimage; }HTML:
<button type = "button" id = "button" onclick="getSecretMessage()">Click here to view the secret message...</button> <div id = "results"> incomplete information </div> <div id = "picture" style= "display:none"> <img src="linkzelda.jpg"> </div> function getSecretMessage() { let secretMessage = "Link"; let userMessage = ""; while (userMessage != secretMessage) { userMessage = prompt("Enter the Secret word.") } document.getElementById("picture").style.display="block"; document.getElementById("results").innerHTML = "Congratulations!"; } <button type = "button" id = "button" onclick="getSecretMessage()">Click here to view the secret message...</button> <div id = "results"> incomplete information </div> <div id = "picture" style= "display:none"> <img width="300" height="300" src="https://images.unsplash.com/photo-1633683536118-ed815cd3dd17?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=764&q=80"> </div>Parece que tienes un problema aquí.
let showimage = (document.getElementById("picture").style.display = "block") document.getElementById("results").innerHTML = "Congratulations!" + showimage;En JavaScript y muchos otros lenguajes, el valor final de la asignación es el valor del operando derecho.
let a = b = 3; // a: 3, b: 3 let showimage = (document.getElementById("picture").style.display = "block") // showimage: "block"¿Solo necesitas el mensaje de "Felicitaciones"? Entonces puedes arreglarlo de la siguiente manera.
document.getElementById("results").innerHTML = "Congratulations!";